package cn.edu.wynu.d9_interface_demo;

import java.util.ArrayList;

public class StudentOperatorimpl2 implements StudentOperator{
    @Override
    public void printAllInfo(ArrayList<Student> students) {
        System.out.println("----------全班所有学生的信息如下----------");
        int count1 = 0; // 记录男生人数
        int count2 = 0; // 记录女生人数
        for (int i = 0; i < students.size(); i++) {
            Student s = students.get(i);
            System.out.println("姓名：" + s.getName() + "性别：" + s.getSex() + "成绩：" + s.getScore());
            if (s.getSex() == '男') {
                count1++;
            } else {
                count2++;
            }
        }
        System.out.println("男生人数：" + count1 + "  女生人数：" + count2);
        System.out.println("班级总人数：" + students.size());
        System.out.println("------------------------------");
    }

    @Override
    public void printAverageScore(ArrayList<Student> students) {
        double allScore = 0.0;
        double max = students.get(0).getScore(); // 记录最高分
        double min = students.get(0).getScore(); // 记录最低分
        for (int i = 0; i < students.size(); i++) {
            Student s = students.get(i);
//            if (s.getScore() > max) {
//                max = s.getScore();
//            }
//            if (s.getScore() < min) {
//                min = s.getScore();
//            }
            if (s.getScore() > max) max = s.getScore();
            if (s.getScore() < min) min = s.getScore();
            allScore += s.getScore();
        }
        System.out.println("班级最高分：" + max);
        System.out.println("班级最低分：" + min);
        System.out.println("全班平均成绩为：" + (allScore - max - min) / (students.size() - 2));
    }
}
